package net.maku.generator.service;

import net.maku.generator.common.page.PageResult;
import net.maku.generator.domain.query.Query;
import net.maku.generator.domain.entity.TemplateGroupEntity;
import net.maku.generator.enums.TemplateGroupTypeEnum;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.util.List;

/**
 * 模板组管理Service接口
 */
public interface TemplateGroupService {

    PageResult<TemplateGroupEntity> page(Query query);

    TemplateGroupEntity getById(Long id);

    List<TemplateGroupEntity> list(String groupName, TemplateGroupTypeEnum type);

    void updateDataById(TemplateGroupEntity templateGroup);

    void saveData(TemplateGroupEntity templateGroup);

    void copy(TemplateGroupEntity templateGroup);

    void importTemplateGroup(MultipartFile file) throws Exception;

    void deleteData(List<Long> idList);
}
